package tp1;

public class IteradorEscritura extends Iterador{
	
	public IteradorEscritura(Matriz m){
		matriz = m;
	}
	
	public IteradorEscritura crearIteradorEscrituraEnFila(Matriz m, int fila) throws InterruptedException{
		
		IteradorEscritura ite = new IteradorEscritura(m);

		for(int i = 0 ; i < m.ancho -1;i++){
			m.celdaEnPosicion(i, fila).escribir();
		}
		
		ite.current = m.celdaEnPosicion(0,fila);
		
		return ite;
	}
	
	public void next(){
		
		current.terminarDeEscribir();
		current = matriz.celdaEnPosicion(current.x + 1, current.y);

	}
	
	public void end(){
		
		while(hasCurrent()) next();
		
	}
	
	public void escribirEnCelda(int x, int y) throws InterruptedException{
		
		current = matriz.celdaEnPosicion(x, y);
		current.escribir();
	}
	
	public void terminarDeEscribirEnCelda(){
		current.terminarDeEscribir();
	}
}
